package com.lj.back.manage.scaffold.module.sys.service;

import javax.validation.constraints.NotBlank;

/**
 * @author lv
 * @version 1.0.0
 */
public interface SysUserTokenService {

    /**
     * 更新用户token过期时间
     * @param token token
     * @param expireTime 过期时间
     * @return
     */
    boolean updateUserTokenExpireTime(@NotBlank(message = "{token.notnull}") String token, long expireTime);

    /**
     * 更新token过期时间
     * @param token token
     * @return
     */
    boolean updateUserTokenExpireTime(@NotBlank(message = "{token.notnull}") String token);

    /**
     * 检查token是否有效  有效则续期  无效抛出异常
     * @param token token
     * @return 是否有效
     */
    boolean checkTokenIsValid(@NotBlank(message = "{token.notnull}") String token);

    /**
     * 删除token
     * @param token token
     * @return
     */
    boolean deleteToken(@NotBlank(message = "{token.notnull}") String token);

    /**
     * 删除token
     * @param userId 用户ID
     * @return
     */
    boolean deleteToken(long userId);
}
